package com.yanqu.road.entity.kowloon.config;

import com.yanqu.road.entity.FieldTypeAnnotation;
import com.yanqu.road.entity.config.system.NormalWeightItem;

import java.util.ArrayList;
import java.util.List;


@FieldTypeAnnotation(tableName = "t_p_kowloon_npc", desc = "九龙城寨npc配置")
public class KowloonNpcConfig {

    @FieldTypeAnnotation(desc = "ID", select = true, orderASC = true)
    private int id;

    @FieldTypeAnnotation(desc = "npcId")
    private int npcId;

    @FieldTypeAnnotation(desc = "类型")
    private int type;

    @FieldTypeAnnotation(desc = "等级")
    private int level;

    @FieldTypeAnnotation(desc = "合成等级")
    private int mergeLevel;

    @FieldTypeAnnotation(desc = "升级消耗（当前级）")
    private String upCost = "";

    @FieldTypeAnnotation(desc = "解锁条件（关卡等级）")
    private String unlockCond;

    @FieldTypeAnnotation(desc = "初级技能列表")
    private List<NormalWeightItem> juniorSkillsList = new ArrayList<>();

    @FieldTypeAnnotation(desc = "中级技能列表")
    private List<NormalWeightItem> middleSkillsList = new ArrayList<>();

    @FieldTypeAnnotation(desc = "高级技能列表")
    private List<NormalWeightItem> highSkillsList = new ArrayList<>();

    @FieldTypeAnnotation(desc = "npc属性")
    private KowloonNpcAttributeConfig npcAttribute = new KowloonNpcAttributeConfig();

    @FieldTypeAnnotation(desc = "战力")
    private long power;

    public int getId() {
        return id;
    }

    public void setId(int id) {
        this.id = id;
    }

    public int getNpcId() {
        return npcId;
    }

    public void setNpcId(int npcId) {
        this.npcId = npcId;
    }

    public int getType() {
        return type;
    }

    public void setType(int type) {
        this.type = type;
    }

    public int getLevel() {
        return level;
    }

    public int getMergeLevel() {
        return mergeLevel;
    }

    public void setMergeLevel(int mergeLevel) {
        this.mergeLevel = mergeLevel;
    }

    public void setLevel(int level) {
        this.level = level;
    }

    public String getUpCost() {
        return upCost;
    }

    public void setUpCost(String upCost) {
        this.upCost = upCost;
    }

    public String getUnlockCond() {
        return unlockCond;
    }

    public void setUnlockCond(String unlockCond) {
        this.unlockCond = unlockCond;
    }

    public KowloonNpcAttributeConfig getNpcAttribute() {
        return npcAttribute;
    }

    public void setNpcAttribute(KowloonNpcAttributeConfig npcAttribute) {
        this.npcAttribute = npcAttribute;
    }

    public List<NormalWeightItem> getJuniorSkillsList() {
        return juniorSkillsList;
    }

    public void setJuniorSkillsList(List<NormalWeightItem> juniorSkillsList) {
        this.juniorSkillsList = juniorSkillsList;
    }

    public List<NormalWeightItem> getMiddleSkillsList() {
        return middleSkillsList;
    }

    public void setMiddleSkillsList(List<NormalWeightItem> middleSkillsList) {
        this.middleSkillsList = middleSkillsList;
    }

    public List<NormalWeightItem> getHighSkillsList() {
        return highSkillsList;
    }

    public void setHighSkillsList(List<NormalWeightItem> highSkillsList) {
        this.highSkillsList = highSkillsList;
    }

    public long getPower() {
        return power;
    }

    public void setPower(long power) {
        this.power = power;
    }
}
